package com.wxzz.elearing.user.entity;

import java.time.LocalDateTime;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.wxzz.elearning.common.bean.BaseEntity;
import com.wxzz.elearning.common.utils.ListUtils;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;

/**
 * <p>
 * 通知
 * </p>
 *
 * @author
 * @since 2021-05-22
 */
@Data
@ApiModel(value = "SystemMessage对象", description = "通知")
public class SystemMessage extends BaseEntity {

    @ApiModelProperty(value = "级别id")
    private Long commonCategoryId;

    @ApiModelProperty(value = "通知标题")
    private String messageTitle;

    @ApiModelProperty(value = "通知发送时间")
    private LocalDateTime messageSendTime;

    @ApiModelProperty(value = "通知副标题")
    private String messageSubhead;

    @ApiModelProperty(value = "图片路径 多个,拼接", hidden = true)
    private String messageUrls;

    @ApiModelProperty(value = "视频地址")
    private String messageVideo;

    @ApiModelProperty(value = "通知类型 0-用户 1-企业后台 2-平台后台")
    private Integer messageType;

    @ApiModelProperty(value = "是否短信提醒 0-否 1-是")
    private Integer isMms;

    @ApiModelProperty(value = "是否公众号提醒 0-否 1-是")
    private Integer isPublic;

    @ApiModelProperty(value = "通知内容详情")
    private String messageDetail;

    @ApiModelProperty(value = "企业id")
    private Long enterpriseId;

    @ApiModelProperty(value = "类型 0-通知 1-消息")
    private Integer type;

    @TableField(exist = false)
    @ApiModelProperty(value = "等级名字")
    private String commonCategoryName;

    @TableField(exist = false)
    @ApiModelProperty(value = "0-未读 1-已读")
    private Integer isRead;

    @TableField(exist = false)
    @ApiModelProperty(value = "图片路径 数组")
    private List<String> messageUrlsList;

    @NotNull(message = "请传入发送的微信用户/企业id(传入一个0为全部)")
    @TableField(exist = false)
    @ApiModelProperty(value = "发送的微信用户/企业id(传入一个0为全部)")
    private List<Long> commonIds;
}
